package Message.Public
{
	import Engine.RMI.*;
	import Framework.Serialize.*;
	
	public class ECamp extends Object
	{
		public var __value:int;
		private static var __values:Array = [];
		public static const _ECampNormal:int = 0;
		public static const ECampNormal:ECamp = new ECamp(_ECampNormal);
		public static const _ECampOne:int = 1;
		public static const ECampOne:ECamp = new ECamp(_ECampOne);
		public static const _ECampTwo:int = 2;
		public static const ECampTwo:ECamp = new ECamp(_ECampTwo);
		public static const _ECampThree:int = 3;
		public static const ECampThree:ECamp = new ECamp(_ECampThree);
		public static const _ECampNeutral:int = 4;
		public static const ECampNeutral:ECamp = new ECamp(_ECampNeutral);
		public static const _ECampNpc:int = 5;
		public static const ECampNpc:ECamp = new ECamp(_ECampNpc);
		
		public function ECamp(param1:int)
		{
			this.__value = param1;
			__values[param1] = this;
			
		}
		
		public function value() : int
		{
			return this.__value;
		}
		
		public function equals(param1:Object) : Boolean
		{
			if (param1 == this)
			{
				return true;
			}
			var _loc_2:* = param1 as ERMICallModel;
			if (_loc_2 == null)
			{
				return false;
			}
			return this.__value == _loc_2.value();
		}
		
		public function hashCode() : int
		{
			return 5 * this.__value;
		}
		
		public function __write(param1:SerializeStream) : void
		{
			param1.writeByte(this.__value);
			
		}
		
		public static function convert(param1:int) : ECamp
		{
			return __values[param1];
		}
		
		public static function __read(param1:SerializeStream) : ECamp
		{
			var _loc_2:* = param1.readByte();
			if (_loc_2 < 0 || _loc_2 >= 6)
			{
				throw new MarshalException();
			}
			return ECamp.convert(_loc_2);
		}
		
	}
}
